#pragma once
#include "reversetask.h"
#include "LineAbDipole.h"

class LineAbReverseTask :
	public ReverseTask
{
private:
	LineAbDipole Dipole;

	double X;
	double Y;
	double Length;

	feVector BufVector;
	feVector CachedCurve[MAX_CURVES];
	ConductiveLayer CachedL[100];
	int				CacheLNum;
	int				CachedCurveIndex;
	feVector Times;


protected:
	virtual void AfterInit();


public:
	LineAbReverseTask();
	
	virtual void CalcAbnormalCurve(int iIndex, ConductiveLayer *iNewMedium, int iLayersCount);
	virtual void CalcActualCurve(int iIndex);

	virtual ~LineAbReverseTask();
};
